package kr.saeildamil.androidstudy.ch07;

import kr.saeildamil.androiddforstudy.R;
import android.app.Activity;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Bundle;
import android.view.View;

public class DrawBitmapEX extends Activity {
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		DrawView dv = new DrawView(this);
		setContentView(dv);
		
	}
}

class DrawView extends View{
	Bitmap bit;
	Canvas offscreen;
	Paint pnt;
	Bitmap backbit;
	public DrawView(Context context) {
		super(context);
		bit = BitmapFactory.decodeResource(getResources(), R.drawable.harubang);
		backbit = Bitmap.createBitmap(300, 200, Bitmap.Config.ARGB_8888);
		offscreen = new Canvas(backbit);
		offscreen.drawColor(Color.GREEN);
		pnt = new Paint();
		pnt.setColor(Color.RED);
		
	}
		@Override
		protected void onDraw(Canvas canvas) {
			super.onDraw(canvas);
			/*canvas.drawBitmap(bit, 10, 10, null);	// 원본 이미지를 (10,10)위치에 Draw.
			canvas.drawBitmap(bit, null, new Rect(120, 10, 170, 85), null);	// 원본 이미지를 축소시켜 Draw.
			canvas.drawBitmap(bit, new Rect(30, 30, 70, 80), new Rect(180, 10, 180+80, 10+100), null);
			canvas.drawBitmap(bit, null, new Rect(10,200,380,500), null);*/
			
			canvas.drawColor(Color.LTGRAY);
			for(int x=0; x<300; x+=10){
				offscreen.drawLine(x, 0, 300-x, 200, pnt);
				try {
					Thread.sleep(500);
				} catch (InterruptedException e) {
					e.printStackTrace();
				}
			}
			canvas.drawBitmap(backbit, 10, 10, null);
		}
}